Coders at Work: Reflections on the Craft of Programming

Coders at Work: Reflections on the Craft of Programming

  • Downloads:9006
  • Type:Epub+TxT+PDF+Mobi
  • Create Date:2021-04-10 14:53:16
  • Update Date:2025-09-06
  • Status:finish
  • Author:Peter Seibel
  • ISBN:1430219483
  • Environment:PC/Android/iPhone/iPad/Kindle

Summary

Peter Seibel interviews 16 of the most interesting computer programmers alive today in Coders at Work, offering a brand-new companion volume to Apress’s highly acclaimed best-seller Founders at Work by Jessica Livingston。 As the words "at work" suggest, Peter Seibel focuses on how his interviewees tackle the day–to–day work of programming, while revealing much more, like how they became great programmers, how they recognize programming talent in others, and what kinds of problems they find most interesting。

Hundreds of people have suggested names of programmers to interview on the Coders at Work web site: http://www。codersatwork。com。 The complete list was 284 names。 Having digested everyone’s feedback, we selected 16 folks who’ve been kind enough to agree to be interviewed:

- Frances Allen: Pioneer in optimizing compilers, first woman to win the Turing Award (2006) and first female IBM fellow
- Joe Armstrong: Inventor of Erlang
- Joshua Bloch: Author of the Java collections framework, now at Google
- Bernie Cosell: One of the main software guys behind the original ARPANET IMPs and a master debugger
- Douglas Crockford: JSON founder, JavaScript architect at Yahoo!
- L。 Peter Deutsch: Author of Ghostscript, implementer of Smalltalk-80 at Xerox PARC and Lisp 1。5 on PDP-1
- Brendan Eich: Inventor of JavaScript, CTO of the Mozilla Corporation
- Brad Fitzpatrick: Writer of LiveJournal, OpenID, memcached, and Perlbal
- Dan Ingalls: Smalltalk implementor and designer
- Simon Peyton Jones: Coinventor of Haskell and lead designer of Glasgow Haskell Compiler
- Donald Knuth: Author of The Art of Computer Programming and creator of TeX
- Peter Norvig: Director of Research at Google and author of the standard text on AI
- Guy Steele: Coinventor of Scheme and part of the Common Lisp Gang of Five, currently working on Fortress
- Ken Thompson: Inventor of UNIX
- Jamie Zawinski: Author of XEmacs and early Netscape/Mozilla hacker

What you’ll learn:
How the best programmers in the world do their job

Who is this book for?
Programmers interested in the point of view of leaders in the field。 Programmers looking for approaches that work for some of these outstanding programmers。

Download

Reviews

Omkar Patil

The book has 15 interviews with some of the most prolific coders。 I read only sections of each interview as a lot of it is quite old and out of context now。 But the other parts are quite wonderful in the sense that they give you an idea of how programming has changed over time and how some of the greats really did it。 Inspiring book!

Sam M

It is what it is。 Interviews with professional coders。 What designates someone as a great "Coder" is a little bit harder to define than, say "Founder"。 It's more or less obvious who is a "good" founder, because they get credit for starting a well-known project or company。 With Coders, it is a lot harder。 Given all that, Peter Seibel did a good job with this book。 There are plenty of nuggets of wisdom in there, even if you skip over entire chapters。 It is what it is。 Interviews with professional coders。 What designates someone as a great "Coder" is a little bit harder to define than, say "Founder"。 It's more or less obvious who is a "good" founder, because they get credit for starting a well-known project or company。 With Coders, it is a lot harder。 Given all that, Peter Seibel did a good job with this book。 There are plenty of nuggets of wisdom in there, even if you skip over entire chapters。 。。。more

Sirwan

I loved it!

Anders

Peter Siebel does a great job of interviewing some of the giants in programming and giving them room for explaining what they think it's important。 It felt a bit long at times, especially when the interviews lost programming focus and dived more into the persons earlier employments and such。 On the other hand, a few of the people were really inspiring and it's a great opportunity to see how they approach programming。 Peter Siebel does a great job of interviewing some of the giants in programming and giving them room for explaining what they think it's important。 It felt a bit long at times, especially when the interviews lost programming focus and dived more into the persons earlier employments and such。 On the other hand, a few of the people were really inspiring and it's a great opportunity to see how they approach programming。 。。。more

Scott J Pearson

Software developers are typically bright people but possess few social contacts who approach the world like them。 Such loneliness is famously parodied by stereotypes。 Even the most social among us have a difficult time relating to others what programming is like。 In this work, Seibel provides interviews with 15 accomplished programmers and alleviates some of that alone-ness。 In so doing, he explains to the English-speaking world how computer programming has grown and is currently practiced。The i Software developers are typically bright people but possess few social contacts who approach the world like them。 Such loneliness is famously parodied by stereotypes。 Even the most social among us have a difficult time relating to others what programming is like。 In this work, Seibel provides interviews with 15 accomplished programmers and alleviates some of that alone-ness。 In so doing, he explains to the English-speaking world how computer programming has grown and is currently practiced。The interviewees compose a veritable who’s who of computer science – including, at the end, Donald Knuth, who is widely regarded as the best programmer of all time。 Fran Allen, a widely recognized female programmer, is included。 Some were educated well at Harvard or MIT。 Others were, to a large degree, self-taught before the discipline of computer science was established。 All convey a unique perspective about how they write code。For the most part, Seibel asks each person a similar set of questions: about their background, formative experiences, approach to the craft of coding, and their approach to a new trend of literate programming。 It’s amazing to see how wide the range of different opinions is! They all seem to disagree, especially about very important things。 Providing room for (sometimes heated) disagreements is healthy for computer programmers who are smart but have few companions。 After all, we must work together to accomplish work。This is not a technical work。 Neither code nor math is presented。 It’s more of a biographical work of 16 different programmers。 It spans the lanes of human interest and computer science。 Non-programmers might be interested in learning how IT people work, but the obvious audience here consists of software developers。 By grabbing big-name interviews, Seibel hits the sweet spot for this audience and knocks a homer out of the park。In particular, expositions such as this allow people to see the history of computing。 Readers get to see innovators, spanning back to the 1950s until the date of publication in 2009。 These people changed the world such that a mini-computer resides in many people’s pockets in the developed world, in the form of a smart phone。 They went from coding in assembly code to writing in higher-level languages to co-writing in more everyday language。 That history of science will be of interest to readers in the future when future students seek to learn about the “old days” when computers were young。 And we will have the writer Peter Seibel to thank。 。。。more

Neeraj

Apparently it will inspire me for the SWE work。 I read the first chapter on Jamie Zawinski。 It made me quit the idea of pursuing Masters not that I have good profile or grades for a decent graf school。But it's same shit, different day。Anyway, I got one of the best jobs after undergrad。 Apparently it will inspire me for the SWE work。 I read the first chapter on Jamie Zawinski。 It made me quit the idea of pursuing Masters not that I have good profile or grades for a decent graf school。But it's same shit, different day。Anyway, I got one of the best jobs after undergrad。 。。。more

Bill

Trove of wisdomEach interview has great depth and wisdom。 Learned a lot about how to improve as a programmer。 A student of the history of programming will appreciate a look at the minds behind the influential software of the past。

Alexander

A few interviews were interesting, others dragged。

Guðmundur

Great motivation and inspiration。Interesting to learn from the great。 This is a great book to pick up and read in short bursts。 The book is packed with wisdom。

yc

Really, really interesting。

Alex Fürstenau

Read about half of the book。 Some insights every now and then but pretty repetitive in the end。

Robin Leysen

Peruse from time to time。 All those interviews don't read well as a book。 I'll come back to this。 Maybe。 Peruse from time to time。 All those interviews don't read well as a book。 I'll come back to this。 Maybe。 。。。more

Steve Payeur

As a programmer, this book was great。 It gave many viewpoints on many pertinent subjects ranging from general viewpoints to specific debugging and coding techniques。 The interviewees also provided a lot of context and history related to parts of the field。

Charles

This book is probably the best I've seen in probing the difference between academic programming and programming for industry, and why one is not more like the other。 This book is probably the best I've seen in probing the difference between academic programming and programming for industry, and why one is not more like the other。 。。。more

Muhammad Hanif

This book was great

Wg

I like to read a section of this book every once and a while ‘as a treat’

Saurabh Jha

This book is a collection of interviews with fifteen highly accomplished programmers。The first good thing about this book is that the programmers come from a very diverse set of backgrounds and have very different opinions and experiences。The interviews themselves are very different from each other but three points came through very clearly: 1) its hard to write correct concurrent code, 2) the computers we are dealing with are way more complex than before, 3) there's no universal best way to wri This book is a collection of interviews with fifteen highly accomplished programmers。The first good thing about this book is that the programmers come from a very diverse set of backgrounds and have very different opinions and experiences。The interviews themselves are very different from each other but three points came through very clearly: 1) its hard to write correct concurrent code, 2) the computers we are dealing with are way more complex than before, 3) there's no universal best way to write good programs。This book is rather lengthy and can get technical at some places; I tried reading it back in 2012 but couldn't do it because I didn't knew much programming back then。Another good thing is Seibel doesn't hold back from asking tough questions。 I think the best illustration of this point is when he asked Ken Thompson about security problems in C。 I think it was a great way to illuminate why those individuals chose to believe what they believed in。Going through this book also brings this realisation that there is no single best technology or a sure shot path to writing good programs。 。。。more

Ronald Perrella

Always good to read how other coders approach the craft。 However, this book has a couple of problems。 First, it seems to have pulled in a disproportionate number of Lisp luminaries。 This is somewhat understandable giving that Peter Seibel is the author of a Common Lisp book。 Secondly, it only has one lady programmer and her article is the shortest。 So that's disappointing。 I think there is a tendency in the Silicon valley to ignore contributions from the East Coast that aren't from MIT。 IBM has Always good to read how other coders approach the craft。 However, this book has a couple of problems。 First, it seems to have pulled in a disproportionate number of Lisp luminaries。 This is somewhat understandable giving that Peter Seibel is the author of a Common Lisp book。 Secondly, it only has one lady programmer and her article is the shortest。 So that's disappointing。 I think there is a tendency in the Silicon valley to ignore contributions from the East Coast that aren't from MIT。 IBM has produced a large number of very competent programmers。 DEC did as well。 I would also like to have seen more from programmers who are contributing to the craft。 Someone like Uncle Bob Martin or Martin Fowler。 It's easy to focus on language designers but that's not going to address the title of the book。 It's a still a good book。 。。。more

Manuel Laphroaig

Had such a massive impact on my programming, I read it when I'm feeling strange about my career and it gives me so much inspiration。 Had such a massive impact on my programming, I read it when I'm feeling strange about my career and it gives me so much inspiration。 。。。more

Enrique Mañas

I started reading this book during my process to publish "Living by the Code", in order to capture an idea or two about interviews for people in tech。 It took me a while to finish it though, the book is intense and long!Peter Seibel interviewed 16 very relevant contributors to the tech world。 I was particularly delighted to read the interviews with Joe Armstrong (author of Erlang), Donald Knuth, Peter Norvig (coauthor of Artificial Intelligence: A Modern Approach,), Joshua Bloch, among others。 I started reading this book during my process to publish "Living by the Code", in order to capture an idea or two about interviews for people in tech。 It took me a while to finish it though, the book is intense and long!Peter Seibel interviewed 16 very relevant contributors to the tech world。 I was particularly delighted to read the interviews with Joe Armstrong (author of Erlang), Donald Knuth, Peter Norvig (coauthor of Artificial Intelligence: A Modern Approach,), Joshua Bloch, among others。 He was conducting some standard questions to each of them, and diving into their particular figure and knowledge。 There were some general ideas that you could take from the book, common to all the interviews:- C++ is an abomination。- C is widely accepted as one of the top languages over Assembly。- Assembly is still important。- Most of the folks in the book give a lot of importance to debugging, and most of them have done it through logging and outputting information to the console, rather than via tools。- Maths are not important for programming itself, but they can be very relevant if your particular area of work requires them (for instance, Cryptography)。 Here there are some of the notes I took:Joshua Bloch"Generally speaking, if I find myself copying and pasting, I think, ”What's wrong with this design? How can I fix it?”"It's like Metcalfe's law: the value of a network is proportional to the square of the number of users。"Peyton Jones"Now that's still not science in the sense of discovering laws。 But it is a kind of abstraction into reusable thought-stuff out of the morass of real life that I think is very important。""Guy Steele was saying how Moore's Law has been true for his whole career and he suspects it won't be true for his son's whole career and was speculating a bit about what that's going to do to programming。 I wonder will we eventually have to stop just saying, “If we can build a bridge over the Channel, we can build one over the Atlantic”?"Peter Norvig"Is Google correct? Well, type in these words, you get back ten pages。 If it crashes, then it's incorrect but if it gives you back these ten links rather than those ten links, there's no saying that one is right。 You can have opinions on which are better than the other, but you can't go beyond that。"Dan Ingalls"The difference I see between engineers and craftsmen is the engineers are the folks who say, “We should be like the guys who build bridges。 Bridges don't fall down。 They have a repeatable engineering process。” The craftsmen say, “This is more like woodworking。 The wood is unique every time and there are rules of thumb but no method that can guarantee certain results。”Peter Deutsch"Someone extrapolated the growth rate and said, “My God。 By 20 or 30 years from now, every single person will have to be a telephone operator。” Well, that's what happened。 I think something like that may be happening in some big areas of programming, as well。""I would do things and they would just turn out right。 Some of that was luck。 Some of it, I'm sure, was experience that had simply gotten internalized so far down that I didn't have conscious access to the process。"Ken Thompson"My definition of fragile code is, suppose you want to add a feature—good code, there's one place where you add that feature and it fits; fragile code, you've got to touch ten places。"Donald Knuth"But even an algorithm like a balanced tree or AVL tree, I don't use in my own programs unless I know that it's going to be a really big tree。""Combinatorial algorithms are fascinating because one good idea can save you ten orders of magnitude in running time。 But I don't sneer at ideas that save you twenty percent when you're doing it a trillion times。 Because if you can save a hundred nanoseconds in a loop that's being done a trillion times, I think you're saving a day。 If the code is going to be used a lot it can really pay off so you've got to go to subtle tricks that aren't easy to understand。" 。。。more

Joe

I only read part of this; some interviews were more interesting to me than others (those that were uninteresting got pretty deep into discussions about programming languages that I don't know anything about)。 I enjoyed the interviews with Peter Norvig and Donald Knuth the most。 I only read part of this; some interviews were more interesting to me than others (those that were uninteresting got pretty deep into discussions about programming languages that I don't know anything about)。 I enjoyed the interviews with Peter Norvig and Donald Knuth the most。 。。。more

Mike Polsky

Awesome book。 Every developer should read it and APPYL rules mentioned in it。

Eris

Amazimg! Inspiring, informative, exciting to read。

քամի

սկսելիս չէի մտածում, որ էսքան հետաքրքիր ա լինելու։ ու լրիւ այլ բան ա ծրագրաւորելը, այլ բան ծանօթանալն էն մարդկանց կեանքին, մօտեցումներին, որոնք էս ամէնի հիմքն են դրել։ ու հաքերական մշակոյթը կրող մարդկանց լսելը։մեծ մասը ծանօթ էին, բայց բացայայտում էր ինձ համար զաւինսկին, լրիւ այլ կողմից իմացայ արմսթրոնգին, քեն թոմփսոնին լրիւ հարազատացայ, էլ աւելի հետաքրքիր կնուտը, որը փաստօրէն էնքան էլ իմ իմացած մաթեմատիկոս մարդը չի։հետաքրքիր ա, թէ ոնց ա կնուտը մի հարցի պատասխանելիս օրինակ ա բերում, թէ ոնց են ինչ սկսելիս չէի մտածում, որ էսքան հետաքրքիր ա լինելու։ ու լրիւ այլ բան ա ծրագրաւորելը, այլ բան ծանօթանալն էն մարդկանց կեանքին, մօտեցումներին, որոնք էս ամէնի հիմքն են դրել։ ու հաքերական մշակոյթը կրող մարդկանց լսելը։մեծ մասը ծանօթ էին, բայց բացայայտում էր ինձ համար զաւինսկին, լրիւ այլ կողմից իմացայ արմսթրոնգին, քեն թոմփսոնին լրիւ հարազատացայ, էլ աւելի հետաքրքիր կնուտը, որը փաստօրէն էնքան էլ իմ իմացած մաթեմատիկոս մարդը չի։հետաքրքիր ա, թէ ոնց ա կնուտը մի հարցի պատասխանելիս օրինակ ա բերում, թէ ոնց են ինչ֊որ մարդիկ վերաբացայայտել boyer֊moore֊ի ալգորիթմը, քանի որ չեն իմացել, որ արդէն կայ։ ու սէնց բացայայտումներ չանելու համար ա յատկապէս կարեւոր կարդալ ծրագրաւորման գրքեր ու ծանօթանալ էս ոլորտի պատմութեանն էլ, որովհետեւ շատ հետաքրքիր «գաղտնիքներ» կան։ինչեւէ։ շատ֊շատ հետաքրքիր էր։ 。。。more

Abdelsattar Eljedy

This book is one of the best books that programmers must have read more than once in order to discover the intellectual things and angles of the code many change the thought dramatically

Jonathan Skjøtt

This book was interesting in how it provided a glimpse into a time in which programming was very different。 Not a lot of diversity in who is interviewed: mostly people from the US, mostly men。 Going forward I will need to look for a book which covers other aspects of programming history。

Simon Eskildsen

Terrific account of programming adventures and convictions by some of the disciplines stars。 My favorite chapters were on Jamie Zawinsky; Netscape, Brad Fitzpatrick; author of Memcached and now working on Go at Google, Douglas Crockford, Joe Armstrong, Simon Peyton Jones, and Peter Norvig。 I found most of the other chapters fairly weak, hence the 3-star rating, despite the interviews with the ones named easily being 4-5 stars。It's interesting how a few of them have somewhat quit the disciplines Terrific account of programming adventures and convictions by some of the disciplines stars。 My favorite chapters were on Jamie Zawinsky; Netscape, Brad Fitzpatrick; author of Memcached and now working on Go at Google, Douglas Crockford, Joe Armstrong, Simon Peyton Jones, and Peter Norvig。 I found most of the other chapters fairly weak, hence the 3-star rating, despite the interviews with the ones named easily being 4-5 stars。It's interesting how a few of them have somewhat quit the disciplines and now live far away from computers。 I can see the appeal in that, but, I can't really see myself doing it long-term, which many of them have done。 The amount of commonalities in what they've each discovered is great。 They alll describe it in slightly different ways, however: solving the problem at the right level of abstraction, not using every feature under the sun, defining data structures before anything else, and encouraging that atmosphere where people have enough slack in their workday to experiment—but also enough direction to be successful and not screw around all day。A phrase that Simon Peyton Jones used a lot I haven't been able to stop thinking about is: "[。。] your code should obviously have no bugs rather than having no obvious bugs。" I like that a lot。 I can really appreciate that from all the code that's come back to bite me where I've said "this is solved now!", where, really, it's band-aid onto a ship rather than taking the ship back to the shipyard。 。。。more

Rebecca

A really interesting set of interviews of some of the very founders of computer science and computer engineering。 With my quite limited knowledge of these origins, there was a lot for me to learn and the interviews were, in my opinion, very well conducted。 I walk away with increased knowledge of the history of tech itself as well as the people in it。

GNetics

Long, but a worthwhile read。

Thach Le

an excited book!